/**
 * 
 */
package IOStreamDemo;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;

/**
 * @作者 Administrator
 * @创建日期2015-4-17
 * @版本
 */
public class ByteArrayAccess {
	
	public static void main(String[] args) throws Exception {
		String tmp = "abcdefghijklmnopqrstuvwxyz";    //创建字符串变量
		byte[] src = tmp.getBytes();                   //创建转换前的内存块变量
		//创建与src相关联的输入流对象inpupt
		ByteArrayInputStream input = new ByteArrayInputStream(src);
		//创建输出流对象outpupt
		ByteArrayOutputStream output = new ByteArrayOutputStream();
		//调用transform方法
		new ByteArrayAccess().transform(input, output);
		byte[] result = output.toByteArray();            //获取写出流中字节数据
		System.out.println(new String(result));          //输出转换后的字节数据
	}
	//转换方法
	public void transform(InputStream in, OutputStream out) {
		int c = 0;                                //创建一个变量
		try {                                    //实现转换
			while ((c = in.read()) != -1)            //判断是否读取完成
			{
				//对每个字节数据进行转换
				int C = (int) Character.toUpperCase((char) c);
				out.write(C);                   //输出字符
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}
